package com.itheima.test10;

/**
 * @Author:gy
 * @Date: 2025/09/06 16:58
 * @Description:
 */
public abstract class Bing {
    //描述这个饼的内容 抽象 父类  子类手抓饼 酱香饼  印度飞饼
    /*
    需要:这个饼太简单了 客户需要在原有饼的基础上进行加强,加里脊肉 鸡蛋 烤肠 培根
    方式1.继承一个类 重写功能 就可以加强  我们需要对每个饼都做加强,对每个饼都需要进行集成.代码扩张性差,继承体系比较臃肿
    方法2:装饰者模式
    1.装饰者模式中,装饰的类和被装饰的类需要有共同的接口和父类
    2.装饰类要持有被装饰类的对象,就可以实现装饰需要被装饰的类的对象
    * */
    public abstract String desc();
    //饼的价格
    public abstract double price();
    //卖饼
    public void sell(){
        System.out.println("开始卖饼...");
        System.out.println("客户:要一份"+desc());
        System.out.println("开始做饼...");
        System.out.println("饼好了,需要"+price()+"元");
    }
}
